package com.itljm.cxrMarket.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

/**
 * 卫生违规记录表
 * @TableName hygiene_violations
 */
@TableName(value ="hygiene_violations")
@Data
public class HygieneViolations implements Serializable {

    @TableId(type = IdType.AUTO)
    private Integer id;
    private Integer merchantId; // 关联商户ID
    private Integer relatedRecordId; // 关联检查记录ID
    private Integer violationSource; // 违规来源 1 日常检查，2 投诉举报，3 行政处罚 4 其他
    private String violationType; // 违规类型
    private String description; // 违规描述
    private Integer severity; // 违规严重程度 1 轻微，2 中等，3 严重
    private Integer status; // 处理状态 0 未处理，1 待审批，2 已办结，3 已驳回
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date rectificationDeadline; // 整改期限
    private String rectificationResults; // 整改结果
    private String processLog; // 审批日志
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    @TableField(exist = false)
    private String operator; // 操作人
    @TableField(exist = false)
    private String reason; // 原因
    @TableField(exist = false)
    private String merchantName;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}